<?php

class NewsCatController extends BaseController
{

	/**
	 *创建信息分类
	 */
	public function actionCreate()
	{
		$model=new NewsCat;
		
		$model->znc_patentid = (int)$_GET['pid'];
		$model->znc_title = trim($_GET['title']);

		if($model->save()){
			//成功跳转
			$this->redirect(array('admin'));
		}else{
			//失败跳转
			$this->render('../index/error',array(
					'message'=>'对不起，信息分类创建失败，请稍后再试！',
					'links'=>array(
							array('信息分类管理',$this->pre_module_url.'/newsCat/admin'),
					),
					));
			exit;
		}
	}

	/**
	 * 保存信息分类
	 */
	public function actionUpdate()
	{
		$newsCatId = $_POST['NewsCat']['znc_id'];
		$newsCatTitle = $_POST['NewsCat']['znc_title'];
		foreach($newsCatId as $key=>$val){
			$model = $this->loadModel($val);
			$model->znc_title = $newsCatTitle[$key];
			$model->znc_listorder = $key;
			if(!$model->save()){
				//失败跳转
				$this->render('../index/error',array(
					'message'=>'对不起，信息分类保存失败，请稍后再试！',
					'links'=>array(
							array('信息分类管理',$this->pre_module_url.'/newsCat/admin'),
					),
					));
				exit;
			}
		}
		//成功跳转
		$this->redirect(array('admin'));
	}

	/**
	 * 删除信息分类
	 */
	public function actionDelete($id)
	{
		$model = $this->loadModel($id);
		//分类下有子分类，不能删除
		if(!empty($model->znc_childid)){
			//失败跳转
			$this->render('../index/error',array(
					'message'=>'对不起，分类下面有子分类，不能删除！',
					'links'=>array(
							array('信息分类管理',$this->pre_module_url.'/newsCat/admin'),
					),
					));
			exit;
		}
		
		if(News::model()->findByAttributes(array('znc_id'=>$id))){
			//失败跳转
			$this->render('../index/error',array(
					'message'=>'对不起，分类下有信息，请先删除或转移信息！',
					'links'=>array(
							array('信息分类管理',$this->pre_module_url.'/newsCat/admin'),
					),
					));
			exit;
		}
		
		if($model->delete()){
			//成功跳转
			//成功跳转
			$this->redirect(array('admin'));
		}else{
			//失败跳转
			$this->render('../index/error',array(
					'message'=>'对不起，信息分类删除失败，请稍后再试！',
					'links'=>array(
							array('信息分类管理',$this->pre_module_url.'/newsCat/admin'),
					),
					));
			exit;
		}	
	}



	/**
	 * 信息分类管理
	 */
	public function actionAdmin()
	{
		$model=new NewsCat('search');
		$model->unsetAttributes();  // clear any default values
		$model->znc_patentid = 0;

		$this->render('admin',array(
			'model'=>$model,
		));
	}

	/**
	 *加载模型
	 */
	public function loadModel($id)
	{
		$model=NewsCat::model()->findByPk($id);
		if($model===null)
			throw new CHttpException(404,'The requested page does not exist.');
		return $model;
	}
}
